package com.zhongwang.business.gen.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class VwProjectExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public VwProjectExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andAddressIsNull() {
            addCriterion("address is null");
            return (Criteria) this;
        }

        public Criteria andAddressIsNotNull() {
            addCriterion("address is not null");
            return (Criteria) this;
        }

        public Criteria andAddressEqualTo(String value) {
            addCriterion("address =", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotEqualTo(String value) {
            addCriterion("address <>", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressGreaterThan(String value) {
            addCriterion("address >", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressGreaterThanOrEqualTo(String value) {
            addCriterion("address >=", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLessThan(String value) {
            addCriterion("address <", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLessThanOrEqualTo(String value) {
            addCriterion("address <=", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLike(String value) {
            addCriterion("address like", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotLike(String value) {
            addCriterion("address not like", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressIn(List<String> values) {
            addCriterion("address in", values, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotIn(List<String> values) {
            addCriterion("address not in", values, "address");
            return (Criteria) this;
        }

        public Criteria andAddressBetween(String value1, String value2) {
            addCriterion("address between", value1, value2, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotBetween(String value1, String value2) {
            addCriterion("address not between", value1, value2, "address");
            return (Criteria) this;
        }

        public Criteria andCodeIsNull() {
            addCriterion("code is null");
            return (Criteria) this;
        }

        public Criteria andCodeIsNotNull() {
            addCriterion("code is not null");
            return (Criteria) this;
        }

        public Criteria andCodeEqualTo(String value) {
            addCriterion("code =", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotEqualTo(String value) {
            addCriterion("code <>", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeGreaterThan(String value) {
            addCriterion("code >", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeGreaterThanOrEqualTo(String value) {
            addCriterion("code >=", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLessThan(String value) {
            addCriterion("code <", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLessThanOrEqualTo(String value) {
            addCriterion("code <=", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLike(String value) {
            addCriterion("code like", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotLike(String value) {
            addCriterion("code not like", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeIn(List<String> values) {
            addCriterion("code in", values, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotIn(List<String> values) {
            addCriterion("code not in", values, "code");
            return (Criteria) this;
        }

        public Criteria andCodeBetween(String value1, String value2) {
            addCriterion("code between", value1, value2, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotBetween(String value1, String value2) {
            addCriterion("code not between", value1, value2, "code");
            return (Criteria) this;
        }

        public Criteria andCodeSpecialIsNull() {
            addCriterion("code_special is null");
            return (Criteria) this;
        }

        public Criteria andCodeSpecialIsNotNull() {
            addCriterion("code_special is not null");
            return (Criteria) this;
        }

        public Criteria andCodeSpecialEqualTo(String value) {
            addCriterion("code_special =", value, "codeSpecial");
            return (Criteria) this;
        }

        public Criteria andCodeSpecialNotEqualTo(String value) {
            addCriterion("code_special <>", value, "codeSpecial");
            return (Criteria) this;
        }

        public Criteria andCodeSpecialGreaterThan(String value) {
            addCriterion("code_special >", value, "codeSpecial");
            return (Criteria) this;
        }

        public Criteria andCodeSpecialGreaterThanOrEqualTo(String value) {
            addCriterion("code_special >=", value, "codeSpecial");
            return (Criteria) this;
        }

        public Criteria andCodeSpecialLessThan(String value) {
            addCriterion("code_special <", value, "codeSpecial");
            return (Criteria) this;
        }

        public Criteria andCodeSpecialLessThanOrEqualTo(String value) {
            addCriterion("code_special <=", value, "codeSpecial");
            return (Criteria) this;
        }

        public Criteria andCodeSpecialLike(String value) {
            addCriterion("code_special like", value, "codeSpecial");
            return (Criteria) this;
        }

        public Criteria andCodeSpecialNotLike(String value) {
            addCriterion("code_special not like", value, "codeSpecial");
            return (Criteria) this;
        }

        public Criteria andCodeSpecialIn(List<String> values) {
            addCriterion("code_special in", values, "codeSpecial");
            return (Criteria) this;
        }

        public Criteria andCodeSpecialNotIn(List<String> values) {
            addCriterion("code_special not in", values, "codeSpecial");
            return (Criteria) this;
        }

        public Criteria andCodeSpecialBetween(String value1, String value2) {
            addCriterion("code_special between", value1, value2, "codeSpecial");
            return (Criteria) this;
        }

        public Criteria andCodeSpecialNotBetween(String value1, String value2) {
            addCriterion("code_special not between", value1, value2, "codeSpecial");
            return (Criteria) this;
        }

        public Criteria andCommentIsNull() {
            addCriterion("comment is null");
            return (Criteria) this;
        }

        public Criteria andCommentIsNotNull() {
            addCriterion("comment is not null");
            return (Criteria) this;
        }

        public Criteria andCommentEqualTo(String value) {
            addCriterion("comment =", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentNotEqualTo(String value) {
            addCriterion("comment <>", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentGreaterThan(String value) {
            addCriterion("comment >", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentGreaterThanOrEqualTo(String value) {
            addCriterion("comment >=", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentLessThan(String value) {
            addCriterion("comment <", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentLessThanOrEqualTo(String value) {
            addCriterion("comment <=", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentLike(String value) {
            addCriterion("comment like", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentNotLike(String value) {
            addCriterion("comment not like", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentIn(List<String> values) {
            addCriterion("comment in", values, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentNotIn(List<String> values) {
            addCriterion("comment not in", values, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentBetween(String value1, String value2) {
            addCriterion("comment between", value1, value2, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentNotBetween(String value1, String value2) {
            addCriterion("comment not between", value1, value2, "comment");
            return (Criteria) this;
        }

        public Criteria andCompleteTimeIsNull() {
            addCriterion("complete_time is null");
            return (Criteria) this;
        }

        public Criteria andCompleteTimeIsNotNull() {
            addCriterion("complete_time is not null");
            return (Criteria) this;
        }

        public Criteria andCompleteTimeEqualTo(Date value) {
            addCriterion("complete_time =", value, "completeTime");
            return (Criteria) this;
        }

        public Criteria andCompleteTimeNotEqualTo(Date value) {
            addCriterion("complete_time <>", value, "completeTime");
            return (Criteria) this;
        }

        public Criteria andCompleteTimeGreaterThan(Date value) {
            addCriterion("complete_time >", value, "completeTime");
            return (Criteria) this;
        }

        public Criteria andCompleteTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("complete_time >=", value, "completeTime");
            return (Criteria) this;
        }

        public Criteria andCompleteTimeLessThan(Date value) {
            addCriterion("complete_time <", value, "completeTime");
            return (Criteria) this;
        }

        public Criteria andCompleteTimeLessThanOrEqualTo(Date value) {
            addCriterion("complete_time <=", value, "completeTime");
            return (Criteria) this;
        }

        public Criteria andCompleteTimeIn(List<Date> values) {
            addCriterion("complete_time in", values, "completeTime");
            return (Criteria) this;
        }

        public Criteria andCompleteTimeNotIn(List<Date> values) {
            addCriterion("complete_time not in", values, "completeTime");
            return (Criteria) this;
        }

        public Criteria andCompleteTimeBetween(Date value1, Date value2) {
            addCriterion("complete_time between", value1, value2, "completeTime");
            return (Criteria) this;
        }

        public Criteria andCompleteTimeNotBetween(Date value1, Date value2) {
            addCriterion("complete_time not between", value1, value2, "completeTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andDeliveryDateIsNull() {
            addCriterion("delivery_date is null");
            return (Criteria) this;
        }

        public Criteria andDeliveryDateIsNotNull() {
            addCriterion("delivery_date is not null");
            return (Criteria) this;
        }

        public Criteria andDeliveryDateEqualTo(Date value) {
            addCriterion("delivery_date =", value, "deliveryDate");
            return (Criteria) this;
        }

        public Criteria andDeliveryDateNotEqualTo(Date value) {
            addCriterion("delivery_date <>", value, "deliveryDate");
            return (Criteria) this;
        }

        public Criteria andDeliveryDateGreaterThan(Date value) {
            addCriterion("delivery_date >", value, "deliveryDate");
            return (Criteria) this;
        }

        public Criteria andDeliveryDateGreaterThanOrEqualTo(Date value) {
            addCriterion("delivery_date >=", value, "deliveryDate");
            return (Criteria) this;
        }

        public Criteria andDeliveryDateLessThan(Date value) {
            addCriterion("delivery_date <", value, "deliveryDate");
            return (Criteria) this;
        }

        public Criteria andDeliveryDateLessThanOrEqualTo(Date value) {
            addCriterion("delivery_date <=", value, "deliveryDate");
            return (Criteria) this;
        }

        public Criteria andDeliveryDateIn(List<Date> values) {
            addCriterion("delivery_date in", values, "deliveryDate");
            return (Criteria) this;
        }

        public Criteria andDeliveryDateNotIn(List<Date> values) {
            addCriterion("delivery_date not in", values, "deliveryDate");
            return (Criteria) this;
        }

        public Criteria andDeliveryDateBetween(Date value1, Date value2) {
            addCriterion("delivery_date between", value1, value2, "deliveryDate");
            return (Criteria) this;
        }

        public Criteria andDeliveryDateNotBetween(Date value1, Date value2) {
            addCriterion("delivery_date not between", value1, value2, "deliveryDate");
            return (Criteria) this;
        }

        public Criteria andDemanderIsNull() {
            addCriterion("demander is null");
            return (Criteria) this;
        }

        public Criteria andDemanderIsNotNull() {
            addCriterion("demander is not null");
            return (Criteria) this;
        }

        public Criteria andDemanderEqualTo(String value) {
            addCriterion("demander =", value, "demander");
            return (Criteria) this;
        }

        public Criteria andDemanderNotEqualTo(String value) {
            addCriterion("demander <>", value, "demander");
            return (Criteria) this;
        }

        public Criteria andDemanderGreaterThan(String value) {
            addCriterion("demander >", value, "demander");
            return (Criteria) this;
        }

        public Criteria andDemanderGreaterThanOrEqualTo(String value) {
            addCriterion("demander >=", value, "demander");
            return (Criteria) this;
        }

        public Criteria andDemanderLessThan(String value) {
            addCriterion("demander <", value, "demander");
            return (Criteria) this;
        }

        public Criteria andDemanderLessThanOrEqualTo(String value) {
            addCriterion("demander <=", value, "demander");
            return (Criteria) this;
        }

        public Criteria andDemanderLike(String value) {
            addCriterion("demander like", value, "demander");
            return (Criteria) this;
        }

        public Criteria andDemanderNotLike(String value) {
            addCriterion("demander not like", value, "demander");
            return (Criteria) this;
        }

        public Criteria andDemanderIn(List<String> values) {
            addCriterion("demander in", values, "demander");
            return (Criteria) this;
        }

        public Criteria andDemanderNotIn(List<String> values) {
            addCriterion("demander not in", values, "demander");
            return (Criteria) this;
        }

        public Criteria andDemanderBetween(String value1, String value2) {
            addCriterion("demander between", value1, value2, "demander");
            return (Criteria) this;
        }

        public Criteria andDemanderNotBetween(String value1, String value2) {
            addCriterion("demander not between", value1, value2, "demander");
            return (Criteria) this;
        }

        public Criteria andNameIsNull() {
            addCriterion("name is null");
            return (Criteria) this;
        }

        public Criteria andNameIsNotNull() {
            addCriterion("name is not null");
            return (Criteria) this;
        }

        public Criteria andNameEqualTo(String value) {
            addCriterion("name =", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotEqualTo(String value) {
            addCriterion("name <>", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThan(String value) {
            addCriterion("name >", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThanOrEqualTo(String value) {
            addCriterion("name >=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThan(String value) {
            addCriterion("name <", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThanOrEqualTo(String value) {
            addCriterion("name <=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLike(String value) {
            addCriterion("name like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotLike(String value) {
            addCriterion("name not like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameIn(List<String> values) {
            addCriterion("name in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotIn(List<String> values) {
            addCriterion("name not in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameBetween(String value1, String value2) {
            addCriterion("name between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotBetween(String value1, String value2) {
            addCriterion("name not between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andNumIsNull() {
            addCriterion("num is null");
            return (Criteria) this;
        }

        public Criteria andNumIsNotNull() {
            addCriterion("num is not null");
            return (Criteria) this;
        }

        public Criteria andNumEqualTo(Integer value) {
            addCriterion("num =", value, "num");
            return (Criteria) this;
        }

        public Criteria andNumNotEqualTo(Integer value) {
            addCriterion("num <>", value, "num");
            return (Criteria) this;
        }

        public Criteria andNumGreaterThan(Integer value) {
            addCriterion("num >", value, "num");
            return (Criteria) this;
        }

        public Criteria andNumGreaterThanOrEqualTo(Integer value) {
            addCriterion("num >=", value, "num");
            return (Criteria) this;
        }

        public Criteria andNumLessThan(Integer value) {
            addCriterion("num <", value, "num");
            return (Criteria) this;
        }

        public Criteria andNumLessThanOrEqualTo(Integer value) {
            addCriterion("num <=", value, "num");
            return (Criteria) this;
        }

        public Criteria andNumIn(List<Integer> values) {
            addCriterion("num in", values, "num");
            return (Criteria) this;
        }

        public Criteria andNumNotIn(List<Integer> values) {
            addCriterion("num not in", values, "num");
            return (Criteria) this;
        }

        public Criteria andNumBetween(Integer value1, Integer value2) {
            addCriterion("num between", value1, value2, "num");
            return (Criteria) this;
        }

        public Criteria andNumNotBetween(Integer value1, Integer value2) {
            addCriterion("num not between", value1, value2, "num");
            return (Criteria) this;
        }

        public Criteria andPlanEndTimeIsNull() {
            addCriterion("plan_end_time is null");
            return (Criteria) this;
        }

        public Criteria andPlanEndTimeIsNotNull() {
            addCriterion("plan_end_time is not null");
            return (Criteria) this;
        }

        public Criteria andPlanEndTimeEqualTo(Date value) {
            addCriterion("plan_end_time =", value, "planEndTime");
            return (Criteria) this;
        }

        public Criteria andPlanEndTimeNotEqualTo(Date value) {
            addCriterion("plan_end_time <>", value, "planEndTime");
            return (Criteria) this;
        }

        public Criteria andPlanEndTimeGreaterThan(Date value) {
            addCriterion("plan_end_time >", value, "planEndTime");
            return (Criteria) this;
        }

        public Criteria andPlanEndTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("plan_end_time >=", value, "planEndTime");
            return (Criteria) this;
        }

        public Criteria andPlanEndTimeLessThan(Date value) {
            addCriterion("plan_end_time <", value, "planEndTime");
            return (Criteria) this;
        }

        public Criteria andPlanEndTimeLessThanOrEqualTo(Date value) {
            addCriterion("plan_end_time <=", value, "planEndTime");
            return (Criteria) this;
        }

        public Criteria andPlanEndTimeIn(List<Date> values) {
            addCriterion("plan_end_time in", values, "planEndTime");
            return (Criteria) this;
        }

        public Criteria andPlanEndTimeNotIn(List<Date> values) {
            addCriterion("plan_end_time not in", values, "planEndTime");
            return (Criteria) this;
        }

        public Criteria andPlanEndTimeBetween(Date value1, Date value2) {
            addCriterion("plan_end_time between", value1, value2, "planEndTime");
            return (Criteria) this;
        }

        public Criteria andPlanEndTimeNotBetween(Date value1, Date value2) {
            addCriterion("plan_end_time not between", value1, value2, "planEndTime");
            return (Criteria) this;
        }

        public Criteria andPlanStartTimeIsNull() {
            addCriterion("plan_start_time is null");
            return (Criteria) this;
        }

        public Criteria andPlanStartTimeIsNotNull() {
            addCriterion("plan_start_time is not null");
            return (Criteria) this;
        }

        public Criteria andPlanStartTimeEqualTo(Date value) {
            addCriterion("plan_start_time =", value, "planStartTime");
            return (Criteria) this;
        }

        public Criteria andPlanStartTimeNotEqualTo(Date value) {
            addCriterion("plan_start_time <>", value, "planStartTime");
            return (Criteria) this;
        }

        public Criteria andPlanStartTimeGreaterThan(Date value) {
            addCriterion("plan_start_time >", value, "planStartTime");
            return (Criteria) this;
        }

        public Criteria andPlanStartTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("plan_start_time >=", value, "planStartTime");
            return (Criteria) this;
        }

        public Criteria andPlanStartTimeLessThan(Date value) {
            addCriterion("plan_start_time <", value, "planStartTime");
            return (Criteria) this;
        }

        public Criteria andPlanStartTimeLessThanOrEqualTo(Date value) {
            addCriterion("plan_start_time <=", value, "planStartTime");
            return (Criteria) this;
        }

        public Criteria andPlanStartTimeIn(List<Date> values) {
            addCriterion("plan_start_time in", values, "planStartTime");
            return (Criteria) this;
        }

        public Criteria andPlanStartTimeNotIn(List<Date> values) {
            addCriterion("plan_start_time not in", values, "planStartTime");
            return (Criteria) this;
        }

        public Criteria andPlanStartTimeBetween(Date value1, Date value2) {
            addCriterion("plan_start_time between", value1, value2, "planStartTime");
            return (Criteria) this;
        }

        public Criteria andPlanStartTimeNotBetween(Date value1, Date value2) {
            addCriterion("plan_start_time not between", value1, value2, "planStartTime");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Integer value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Integer value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Integer value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Integer value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Integer value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Integer> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Integer> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Integer value1, Integer value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andPreStatusIsNull() {
            addCriterion("pre_status is null");
            return (Criteria) this;
        }

        public Criteria andPreStatusIsNotNull() {
            addCriterion("pre_status is not null");
            return (Criteria) this;
        }

        public Criteria andPreStatusEqualTo(Integer value) {
            addCriterion("pre_status =", value, "preStatus");
            return (Criteria) this;
        }

        public Criteria andPreStatusNotEqualTo(Integer value) {
            addCriterion("pre_status <>", value, "preStatus");
            return (Criteria) this;
        }

        public Criteria andPreStatusGreaterThan(Integer value) {
            addCriterion("pre_status >", value, "preStatus");
            return (Criteria) this;
        }

        public Criteria andPreStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("pre_status >=", value, "preStatus");
            return (Criteria) this;
        }

        public Criteria andPreStatusLessThan(Integer value) {
            addCriterion("pre_status <", value, "preStatus");
            return (Criteria) this;
        }

        public Criteria andPreStatusLessThanOrEqualTo(Integer value) {
            addCriterion("pre_status <=", value, "preStatus");
            return (Criteria) this;
        }

        public Criteria andPreStatusIn(List<Integer> values) {
            addCriterion("pre_status in", values, "preStatus");
            return (Criteria) this;
        }

        public Criteria andPreStatusNotIn(List<Integer> values) {
            addCriterion("pre_status not in", values, "preStatus");
            return (Criteria) this;
        }

        public Criteria andPreStatusBetween(Integer value1, Integer value2) {
            addCriterion("pre_status between", value1, value2, "preStatus");
            return (Criteria) this;
        }

        public Criteria andPreStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("pre_status not between", value1, value2, "preStatus");
            return (Criteria) this;
        }

        public Criteria andPlanTimeIsNull() {
            addCriterion("plan_time is null");
            return (Criteria) this;
        }

        public Criteria andPlanTimeIsNotNull() {
            addCriterion("plan_time is not null");
            return (Criteria) this;
        }

        public Criteria andPlanTimeEqualTo(Date value) {
            addCriterion("plan_time =", value, "planTime");
            return (Criteria) this;
        }

        public Criteria andPlanTimeNotEqualTo(Date value) {
            addCriterion("plan_time <>", value, "planTime");
            return (Criteria) this;
        }

        public Criteria andPlanTimeGreaterThan(Date value) {
            addCriterion("plan_time >", value, "planTime");
            return (Criteria) this;
        }

        public Criteria andPlanTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("plan_time >=", value, "planTime");
            return (Criteria) this;
        }

        public Criteria andPlanTimeLessThan(Date value) {
            addCriterion("plan_time <", value, "planTime");
            return (Criteria) this;
        }

        public Criteria andPlanTimeLessThanOrEqualTo(Date value) {
            addCriterion("plan_time <=", value, "planTime");
            return (Criteria) this;
        }

        public Criteria andPlanTimeIn(List<Date> values) {
            addCriterion("plan_time in", values, "planTime");
            return (Criteria) this;
        }

        public Criteria andPlanTimeNotIn(List<Date> values) {
            addCriterion("plan_time not in", values, "planTime");
            return (Criteria) this;
        }

        public Criteria andPlanTimeBetween(Date value1, Date value2) {
            addCriterion("plan_time between", value1, value2, "planTime");
            return (Criteria) this;
        }

        public Criteria andPlanTimeNotBetween(Date value1, Date value2) {
            addCriterion("plan_time not between", value1, value2, "planTime");
            return (Criteria) this;
        }

        public Criteria andOrderNoIsNull() {
            addCriterion("order_no is null");
            return (Criteria) this;
        }

        public Criteria andOrderNoIsNotNull() {
            addCriterion("order_no is not null");
            return (Criteria) this;
        }

        public Criteria andOrderNoEqualTo(Integer value) {
            addCriterion("order_no =", value, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoNotEqualTo(Integer value) {
            addCriterion("order_no <>", value, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoGreaterThan(Integer value) {
            addCriterion("order_no >", value, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoGreaterThanOrEqualTo(Integer value) {
            addCriterion("order_no >=", value, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoLessThan(Integer value) {
            addCriterion("order_no <", value, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoLessThanOrEqualTo(Integer value) {
            addCriterion("order_no <=", value, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoIn(List<Integer> values) {
            addCriterion("order_no in", values, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoNotIn(List<Integer> values) {
            addCriterion("order_no not in", values, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoBetween(Integer value1, Integer value2) {
            addCriterion("order_no between", value1, value2, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoNotBetween(Integer value1, Integer value2) {
            addCriterion("order_no not between", value1, value2, "orderNo");
            return (Criteria) this;
        }

        public Criteria andProjectTypeIdIsNull() {
            addCriterion("project_type_id is null");
            return (Criteria) this;
        }

        public Criteria andProjectTypeIdIsNotNull() {
            addCriterion("project_type_id is not null");
            return (Criteria) this;
        }

        public Criteria andProjectTypeIdEqualTo(Integer value) {
            addCriterion("project_type_id =", value, "projectTypeId");
            return (Criteria) this;
        }

        public Criteria andProjectTypeIdNotEqualTo(Integer value) {
            addCriterion("project_type_id <>", value, "projectTypeId");
            return (Criteria) this;
        }

        public Criteria andProjectTypeIdGreaterThan(Integer value) {
            addCriterion("project_type_id >", value, "projectTypeId");
            return (Criteria) this;
        }

        public Criteria andProjectTypeIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("project_type_id >=", value, "projectTypeId");
            return (Criteria) this;
        }

        public Criteria andProjectTypeIdLessThan(Integer value) {
            addCriterion("project_type_id <", value, "projectTypeId");
            return (Criteria) this;
        }

        public Criteria andProjectTypeIdLessThanOrEqualTo(Integer value) {
            addCriterion("project_type_id <=", value, "projectTypeId");
            return (Criteria) this;
        }

        public Criteria andProjectTypeIdIn(List<Integer> values) {
            addCriterion("project_type_id in", values, "projectTypeId");
            return (Criteria) this;
        }

        public Criteria andProjectTypeIdNotIn(List<Integer> values) {
            addCriterion("project_type_id not in", values, "projectTypeId");
            return (Criteria) this;
        }

        public Criteria andProjectTypeIdBetween(Integer value1, Integer value2) {
            addCriterion("project_type_id between", value1, value2, "projectTypeId");
            return (Criteria) this;
        }

        public Criteria andProjectTypeIdNotBetween(Integer value1, Integer value2) {
            addCriterion("project_type_id not between", value1, value2, "projectTypeId");
            return (Criteria) this;
        }

        public Criteria andDesignCompleteTimeIsNull() {
            addCriterion("design_complete_time is null");
            return (Criteria) this;
        }

        public Criteria andDesignCompleteTimeIsNotNull() {
            addCriterion("design_complete_time is not null");
            return (Criteria) this;
        }

        public Criteria andDesignCompleteTimeEqualTo(Date value) {
            addCriterion("design_complete_time =", value, "designCompleteTime");
            return (Criteria) this;
        }

        public Criteria andDesignCompleteTimeNotEqualTo(Date value) {
            addCriterion("design_complete_time <>", value, "designCompleteTime");
            return (Criteria) this;
        }

        public Criteria andDesignCompleteTimeGreaterThan(Date value) {
            addCriterion("design_complete_time >", value, "designCompleteTime");
            return (Criteria) this;
        }

        public Criteria andDesignCompleteTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("design_complete_time >=", value, "designCompleteTime");
            return (Criteria) this;
        }

        public Criteria andDesignCompleteTimeLessThan(Date value) {
            addCriterion("design_complete_time <", value, "designCompleteTime");
            return (Criteria) this;
        }

        public Criteria andDesignCompleteTimeLessThanOrEqualTo(Date value) {
            addCriterion("design_complete_time <=", value, "designCompleteTime");
            return (Criteria) this;
        }

        public Criteria andDesignCompleteTimeIn(List<Date> values) {
            addCriterion("design_complete_time in", values, "designCompleteTime");
            return (Criteria) this;
        }

        public Criteria andDesignCompleteTimeNotIn(List<Date> values) {
            addCriterion("design_complete_time not in", values, "designCompleteTime");
            return (Criteria) this;
        }

        public Criteria andDesignCompleteTimeBetween(Date value1, Date value2) {
            addCriterion("design_complete_time between", value1, value2, "designCompleteTime");
            return (Criteria) this;
        }

        public Criteria andDesignCompleteTimeNotBetween(Date value1, Date value2) {
            addCriterion("design_complete_time not between", value1, value2, "designCompleteTime");
            return (Criteria) this;
        }

        public Criteria andDesignDeptsIsNull() {
            addCriterion("design_depts is null");
            return (Criteria) this;
        }

        public Criteria andDesignDeptsIsNotNull() {
            addCriterion("design_depts is not null");
            return (Criteria) this;
        }

        public Criteria andDesignDeptsEqualTo(String value) {
            addCriterion("design_depts =", value, "designDepts");
            return (Criteria) this;
        }

        public Criteria andDesignDeptsNotEqualTo(String value) {
            addCriterion("design_depts <>", value, "designDepts");
            return (Criteria) this;
        }

        public Criteria andDesignDeptsGreaterThan(String value) {
            addCriterion("design_depts >", value, "designDepts");
            return (Criteria) this;
        }

        public Criteria andDesignDeptsGreaterThanOrEqualTo(String value) {
            addCriterion("design_depts >=", value, "designDepts");
            return (Criteria) this;
        }

        public Criteria andDesignDeptsLessThan(String value) {
            addCriterion("design_depts <", value, "designDepts");
            return (Criteria) this;
        }

        public Criteria andDesignDeptsLessThanOrEqualTo(String value) {
            addCriterion("design_depts <=", value, "designDepts");
            return (Criteria) this;
        }

        public Criteria andDesignDeptsLike(String value) {
            addCriterion("design_depts like", value, "designDepts");
            return (Criteria) this;
        }

        public Criteria andDesignDeptsNotLike(String value) {
            addCriterion("design_depts not like", value, "designDepts");
            return (Criteria) this;
        }

        public Criteria andDesignDeptsIn(List<String> values) {
            addCriterion("design_depts in", values, "designDepts");
            return (Criteria) this;
        }

        public Criteria andDesignDeptsNotIn(List<String> values) {
            addCriterion("design_depts not in", values, "designDepts");
            return (Criteria) this;
        }

        public Criteria andDesignDeptsBetween(String value1, String value2) {
            addCriterion("design_depts between", value1, value2, "designDepts");
            return (Criteria) this;
        }

        public Criteria andDesignDeptsNotBetween(String value1, String value2) {
            addCriterion("design_depts not between", value1, value2, "designDepts");
            return (Criteria) this;
        }

        public Criteria andDesignPlanTimeIsNull() {
            addCriterion("design_plan_time is null");
            return (Criteria) this;
        }

        public Criteria andDesignPlanTimeIsNotNull() {
            addCriterion("design_plan_time is not null");
            return (Criteria) this;
        }

        public Criteria andDesignPlanTimeEqualTo(Date value) {
            addCriterion("design_plan_time =", value, "designPlanTime");
            return (Criteria) this;
        }

        public Criteria andDesignPlanTimeNotEqualTo(Date value) {
            addCriterion("design_plan_time <>", value, "designPlanTime");
            return (Criteria) this;
        }

        public Criteria andDesignPlanTimeGreaterThan(Date value) {
            addCriterion("design_plan_time >", value, "designPlanTime");
            return (Criteria) this;
        }

        public Criteria andDesignPlanTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("design_plan_time >=", value, "designPlanTime");
            return (Criteria) this;
        }

        public Criteria andDesignPlanTimeLessThan(Date value) {
            addCriterion("design_plan_time <", value, "designPlanTime");
            return (Criteria) this;
        }

        public Criteria andDesignPlanTimeLessThanOrEqualTo(Date value) {
            addCriterion("design_plan_time <=", value, "designPlanTime");
            return (Criteria) this;
        }

        public Criteria andDesignPlanTimeIn(List<Date> values) {
            addCriterion("design_plan_time in", values, "designPlanTime");
            return (Criteria) this;
        }

        public Criteria andDesignPlanTimeNotIn(List<Date> values) {
            addCriterion("design_plan_time not in", values, "designPlanTime");
            return (Criteria) this;
        }

        public Criteria andDesignPlanTimeBetween(Date value1, Date value2) {
            addCriterion("design_plan_time between", value1, value2, "designPlanTime");
            return (Criteria) this;
        }

        public Criteria andDesignPlanTimeNotBetween(Date value1, Date value2) {
            addCriterion("design_plan_time not between", value1, value2, "designPlanTime");
            return (Criteria) this;
        }

        public Criteria andPrincipalIsNull() {
            addCriterion("principal is null");
            return (Criteria) this;
        }

        public Criteria andPrincipalIsNotNull() {
            addCriterion("principal is not null");
            return (Criteria) this;
        }

        public Criteria andPrincipalEqualTo(String value) {
            addCriterion("principal =", value, "principal");
            return (Criteria) this;
        }

        public Criteria andPrincipalNotEqualTo(String value) {
            addCriterion("principal <>", value, "principal");
            return (Criteria) this;
        }

        public Criteria andPrincipalGreaterThan(String value) {
            addCriterion("principal >", value, "principal");
            return (Criteria) this;
        }

        public Criteria andPrincipalGreaterThanOrEqualTo(String value) {
            addCriterion("principal >=", value, "principal");
            return (Criteria) this;
        }

        public Criteria andPrincipalLessThan(String value) {
            addCriterion("principal <", value, "principal");
            return (Criteria) this;
        }

        public Criteria andPrincipalLessThanOrEqualTo(String value) {
            addCriterion("principal <=", value, "principal");
            return (Criteria) this;
        }

        public Criteria andPrincipalLike(String value) {
            addCriterion("principal like", value, "principal");
            return (Criteria) this;
        }

        public Criteria andPrincipalNotLike(String value) {
            addCriterion("principal not like", value, "principal");
            return (Criteria) this;
        }

        public Criteria andPrincipalIn(List<String> values) {
            addCriterion("principal in", values, "principal");
            return (Criteria) this;
        }

        public Criteria andPrincipalNotIn(List<String> values) {
            addCriterion("principal not in", values, "principal");
            return (Criteria) this;
        }

        public Criteria andPrincipalBetween(String value1, String value2) {
            addCriterion("principal between", value1, value2, "principal");
            return (Criteria) this;
        }

        public Criteria andPrincipalNotBetween(String value1, String value2) {
            addCriterion("principal not between", value1, value2, "principal");
            return (Criteria) this;
        }

        public Criteria andProcessCompleteTimeIsNull() {
            addCriterion("process_complete_time is null");
            return (Criteria) this;
        }

        public Criteria andProcessCompleteTimeIsNotNull() {
            addCriterion("process_complete_time is not null");
            return (Criteria) this;
        }

        public Criteria andProcessCompleteTimeEqualTo(Date value) {
            addCriterion("process_complete_time =", value, "processCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProcessCompleteTimeNotEqualTo(Date value) {
            addCriterion("process_complete_time <>", value, "processCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProcessCompleteTimeGreaterThan(Date value) {
            addCriterion("process_complete_time >", value, "processCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProcessCompleteTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("process_complete_time >=", value, "processCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProcessCompleteTimeLessThan(Date value) {
            addCriterion("process_complete_time <", value, "processCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProcessCompleteTimeLessThanOrEqualTo(Date value) {
            addCriterion("process_complete_time <=", value, "processCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProcessCompleteTimeIn(List<Date> values) {
            addCriterion("process_complete_time in", values, "processCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProcessCompleteTimeNotIn(List<Date> values) {
            addCriterion("process_complete_time not in", values, "processCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProcessCompleteTimeBetween(Date value1, Date value2) {
            addCriterion("process_complete_time between", value1, value2, "processCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProcessCompleteTimeNotBetween(Date value1, Date value2) {
            addCriterion("process_complete_time not between", value1, value2, "processCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProcessDeptsIsNull() {
            addCriterion("process_depts is null");
            return (Criteria) this;
        }

        public Criteria andProcessDeptsIsNotNull() {
            addCriterion("process_depts is not null");
            return (Criteria) this;
        }

        public Criteria andProcessDeptsEqualTo(String value) {
            addCriterion("process_depts =", value, "processDepts");
            return (Criteria) this;
        }

        public Criteria andProcessDeptsNotEqualTo(String value) {
            addCriterion("process_depts <>", value, "processDepts");
            return (Criteria) this;
        }

        public Criteria andProcessDeptsGreaterThan(String value) {
            addCriterion("process_depts >", value, "processDepts");
            return (Criteria) this;
        }

        public Criteria andProcessDeptsGreaterThanOrEqualTo(String value) {
            addCriterion("process_depts >=", value, "processDepts");
            return (Criteria) this;
        }

        public Criteria andProcessDeptsLessThan(String value) {
            addCriterion("process_depts <", value, "processDepts");
            return (Criteria) this;
        }

        public Criteria andProcessDeptsLessThanOrEqualTo(String value) {
            addCriterion("process_depts <=", value, "processDepts");
            return (Criteria) this;
        }

        public Criteria andProcessDeptsLike(String value) {
            addCriterion("process_depts like", value, "processDepts");
            return (Criteria) this;
        }

        public Criteria andProcessDeptsNotLike(String value) {
            addCriterion("process_depts not like", value, "processDepts");
            return (Criteria) this;
        }

        public Criteria andProcessDeptsIn(List<String> values) {
            addCriterion("process_depts in", values, "processDepts");
            return (Criteria) this;
        }

        public Criteria andProcessDeptsNotIn(List<String> values) {
            addCriterion("process_depts not in", values, "processDepts");
            return (Criteria) this;
        }

        public Criteria andProcessDeptsBetween(String value1, String value2) {
            addCriterion("process_depts between", value1, value2, "processDepts");
            return (Criteria) this;
        }

        public Criteria andProcessDeptsNotBetween(String value1, String value2) {
            addCriterion("process_depts not between", value1, value2, "processDepts");
            return (Criteria) this;
        }

        public Criteria andProduceCompleteTimeIsNull() {
            addCriterion("produce_complete_time is null");
            return (Criteria) this;
        }

        public Criteria andProduceCompleteTimeIsNotNull() {
            addCriterion("produce_complete_time is not null");
            return (Criteria) this;
        }

        public Criteria andProduceCompleteTimeEqualTo(Date value) {
            addCriterion("produce_complete_time =", value, "produceCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProduceCompleteTimeNotEqualTo(Date value) {
            addCriterion("produce_complete_time <>", value, "produceCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProduceCompleteTimeGreaterThan(Date value) {
            addCriterion("produce_complete_time >", value, "produceCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProduceCompleteTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("produce_complete_time >=", value, "produceCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProduceCompleteTimeLessThan(Date value) {
            addCriterion("produce_complete_time <", value, "produceCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProduceCompleteTimeLessThanOrEqualTo(Date value) {
            addCriterion("produce_complete_time <=", value, "produceCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProduceCompleteTimeIn(List<Date> values) {
            addCriterion("produce_complete_time in", values, "produceCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProduceCompleteTimeNotIn(List<Date> values) {
            addCriterion("produce_complete_time not in", values, "produceCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProduceCompleteTimeBetween(Date value1, Date value2) {
            addCriterion("produce_complete_time between", value1, value2, "produceCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProduceCompleteTimeNotBetween(Date value1, Date value2) {
            addCriterion("produce_complete_time not between", value1, value2, "produceCompleteTime");
            return (Criteria) this;
        }

        public Criteria andProduceDeptsIsNull() {
            addCriterion("produce_depts is null");
            return (Criteria) this;
        }

        public Criteria andProduceDeptsIsNotNull() {
            addCriterion("produce_depts is not null");
            return (Criteria) this;
        }

        public Criteria andProduceDeptsEqualTo(String value) {
            addCriterion("produce_depts =", value, "produceDepts");
            return (Criteria) this;
        }

        public Criteria andProduceDeptsNotEqualTo(String value) {
            addCriterion("produce_depts <>", value, "produceDepts");
            return (Criteria) this;
        }

        public Criteria andProduceDeptsGreaterThan(String value) {
            addCriterion("produce_depts >", value, "produceDepts");
            return (Criteria) this;
        }

        public Criteria andProduceDeptsGreaterThanOrEqualTo(String value) {
            addCriterion("produce_depts >=", value, "produceDepts");
            return (Criteria) this;
        }

        public Criteria andProduceDeptsLessThan(String value) {
            addCriterion("produce_depts <", value, "produceDepts");
            return (Criteria) this;
        }

        public Criteria andProduceDeptsLessThanOrEqualTo(String value) {
            addCriterion("produce_depts <=", value, "produceDepts");
            return (Criteria) this;
        }

        public Criteria andProduceDeptsLike(String value) {
            addCriterion("produce_depts like", value, "produceDepts");
            return (Criteria) this;
        }

        public Criteria andProduceDeptsNotLike(String value) {
            addCriterion("produce_depts not like", value, "produceDepts");
            return (Criteria) this;
        }

        public Criteria andProduceDeptsIn(List<String> values) {
            addCriterion("produce_depts in", values, "produceDepts");
            return (Criteria) this;
        }

        public Criteria andProduceDeptsNotIn(List<String> values) {
            addCriterion("produce_depts not in", values, "produceDepts");
            return (Criteria) this;
        }

        public Criteria andProduceDeptsBetween(String value1, String value2) {
            addCriterion("produce_depts between", value1, value2, "produceDepts");
            return (Criteria) this;
        }

        public Criteria andProduceDeptsNotBetween(String value1, String value2) {
            addCriterion("produce_depts not between", value1, value2, "produceDepts");
            return (Criteria) this;
        }

        public Criteria andProducePlanTimeIsNull() {
            addCriterion("produce_plan_time is null");
            return (Criteria) this;
        }

        public Criteria andProducePlanTimeIsNotNull() {
            addCriterion("produce_plan_time is not null");
            return (Criteria) this;
        }

        public Criteria andProducePlanTimeEqualTo(Date value) {
            addCriterion("produce_plan_time =", value, "producePlanTime");
            return (Criteria) this;
        }

        public Criteria andProducePlanTimeNotEqualTo(Date value) {
            addCriterion("produce_plan_time <>", value, "producePlanTime");
            return (Criteria) this;
        }

        public Criteria andProducePlanTimeGreaterThan(Date value) {
            addCriterion("produce_plan_time >", value, "producePlanTime");
            return (Criteria) this;
        }

        public Criteria andProducePlanTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("produce_plan_time >=", value, "producePlanTime");
            return (Criteria) this;
        }

        public Criteria andProducePlanTimeLessThan(Date value) {
            addCriterion("produce_plan_time <", value, "producePlanTime");
            return (Criteria) this;
        }

        public Criteria andProducePlanTimeLessThanOrEqualTo(Date value) {
            addCriterion("produce_plan_time <=", value, "producePlanTime");
            return (Criteria) this;
        }

        public Criteria andProducePlanTimeIn(List<Date> values) {
            addCriterion("produce_plan_time in", values, "producePlanTime");
            return (Criteria) this;
        }

        public Criteria andProducePlanTimeNotIn(List<Date> values) {
            addCriterion("produce_plan_time not in", values, "producePlanTime");
            return (Criteria) this;
        }

        public Criteria andProducePlanTimeBetween(Date value1, Date value2) {
            addCriterion("produce_plan_time between", value1, value2, "producePlanTime");
            return (Criteria) this;
        }

        public Criteria andProducePlanTimeNotBetween(Date value1, Date value2) {
            addCriterion("produce_plan_time not between", value1, value2, "producePlanTime");
            return (Criteria) this;
        }

        public Criteria andProjectClassifyIsNull() {
            addCriterion("project_classify is null");
            return (Criteria) this;
        }

        public Criteria andProjectClassifyIsNotNull() {
            addCriterion("project_classify is not null");
            return (Criteria) this;
        }

        public Criteria andProjectClassifyEqualTo(Integer value) {
            addCriterion("project_classify =", value, "projectClassify");
            return (Criteria) this;
        }

        public Criteria andProjectClassifyNotEqualTo(Integer value) {
            addCriterion("project_classify <>", value, "projectClassify");
            return (Criteria) this;
        }

        public Criteria andProjectClassifyGreaterThan(Integer value) {
            addCriterion("project_classify >", value, "projectClassify");
            return (Criteria) this;
        }

        public Criteria andProjectClassifyGreaterThanOrEqualTo(Integer value) {
            addCriterion("project_classify >=", value, "projectClassify");
            return (Criteria) this;
        }

        public Criteria andProjectClassifyLessThan(Integer value) {
            addCriterion("project_classify <", value, "projectClassify");
            return (Criteria) this;
        }

        public Criteria andProjectClassifyLessThanOrEqualTo(Integer value) {
            addCriterion("project_classify <=", value, "projectClassify");
            return (Criteria) this;
        }

        public Criteria andProjectClassifyIn(List<Integer> values) {
            addCriterion("project_classify in", values, "projectClassify");
            return (Criteria) this;
        }

        public Criteria andProjectClassifyNotIn(List<Integer> values) {
            addCriterion("project_classify not in", values, "projectClassify");
            return (Criteria) this;
        }

        public Criteria andProjectClassifyBetween(Integer value1, Integer value2) {
            addCriterion("project_classify between", value1, value2, "projectClassify");
            return (Criteria) this;
        }

        public Criteria andProjectClassifyNotBetween(Integer value1, Integer value2) {
            addCriterion("project_classify not between", value1, value2, "projectClassify");
            return (Criteria) this;
        }

        public Criteria andTelIsNull() {
            addCriterion("tel is null");
            return (Criteria) this;
        }

        public Criteria andTelIsNotNull() {
            addCriterion("tel is not null");
            return (Criteria) this;
        }

        public Criteria andTelEqualTo(String value) {
            addCriterion("tel =", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelNotEqualTo(String value) {
            addCriterion("tel <>", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelGreaterThan(String value) {
            addCriterion("tel >", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelGreaterThanOrEqualTo(String value) {
            addCriterion("tel >=", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelLessThan(String value) {
            addCriterion("tel <", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelLessThanOrEqualTo(String value) {
            addCriterion("tel <=", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelLike(String value) {
            addCriterion("tel like", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelNotLike(String value) {
            addCriterion("tel not like", value, "tel");
            return (Criteria) this;
        }

        public Criteria andTelIn(List<String> values) {
            addCriterion("tel in", values, "tel");
            return (Criteria) this;
        }

        public Criteria andTelNotIn(List<String> values) {
            addCriterion("tel not in", values, "tel");
            return (Criteria) this;
        }

        public Criteria andTelBetween(String value1, String value2) {
            addCriterion("tel between", value1, value2, "tel");
            return (Criteria) this;
        }

        public Criteria andTelNotBetween(String value1, String value2) {
            addCriterion("tel not between", value1, value2, "tel");
            return (Criteria) this;
        }

        public Criteria andDesignTaskStatusIsNull() {
            addCriterion("design_task_status is null");
            return (Criteria) this;
        }

        public Criteria andDesignTaskStatusIsNotNull() {
            addCriterion("design_task_status is not null");
            return (Criteria) this;
        }

        public Criteria andDesignTaskStatusEqualTo(Integer value) {
            addCriterion("design_task_status =", value, "designTaskStatus");
            return (Criteria) this;
        }

        public Criteria andDesignTaskStatusNotEqualTo(Integer value) {
            addCriterion("design_task_status <>", value, "designTaskStatus");
            return (Criteria) this;
        }

        public Criteria andDesignTaskStatusGreaterThan(Integer value) {
            addCriterion("design_task_status >", value, "designTaskStatus");
            return (Criteria) this;
        }

        public Criteria andDesignTaskStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("design_task_status >=", value, "designTaskStatus");
            return (Criteria) this;
        }

        public Criteria andDesignTaskStatusLessThan(Integer value) {
            addCriterion("design_task_status <", value, "designTaskStatus");
            return (Criteria) this;
        }

        public Criteria andDesignTaskStatusLessThanOrEqualTo(Integer value) {
            addCriterion("design_task_status <=", value, "designTaskStatus");
            return (Criteria) this;
        }

        public Criteria andDesignTaskStatusIn(List<Integer> values) {
            addCriterion("design_task_status in", values, "designTaskStatus");
            return (Criteria) this;
        }

        public Criteria andDesignTaskStatusNotIn(List<Integer> values) {
            addCriterion("design_task_status not in", values, "designTaskStatus");
            return (Criteria) this;
        }

        public Criteria andDesignTaskStatusBetween(Integer value1, Integer value2) {
            addCriterion("design_task_status between", value1, value2, "designTaskStatus");
            return (Criteria) this;
        }

        public Criteria andDesignTaskStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("design_task_status not between", value1, value2, "designTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProcessTaskStatusIsNull() {
            addCriterion("process_task_status is null");
            return (Criteria) this;
        }

        public Criteria andProcessTaskStatusIsNotNull() {
            addCriterion("process_task_status is not null");
            return (Criteria) this;
        }

        public Criteria andProcessTaskStatusEqualTo(Integer value) {
            addCriterion("process_task_status =", value, "processTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProcessTaskStatusNotEqualTo(Integer value) {
            addCriterion("process_task_status <>", value, "processTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProcessTaskStatusGreaterThan(Integer value) {
            addCriterion("process_task_status >", value, "processTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProcessTaskStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("process_task_status >=", value, "processTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProcessTaskStatusLessThan(Integer value) {
            addCriterion("process_task_status <", value, "processTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProcessTaskStatusLessThanOrEqualTo(Integer value) {
            addCriterion("process_task_status <=", value, "processTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProcessTaskStatusIn(List<Integer> values) {
            addCriterion("process_task_status in", values, "processTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProcessTaskStatusNotIn(List<Integer> values) {
            addCriterion("process_task_status not in", values, "processTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProcessTaskStatusBetween(Integer value1, Integer value2) {
            addCriterion("process_task_status between", value1, value2, "processTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProcessTaskStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("process_task_status not between", value1, value2, "processTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProduceTaskStatusIsNull() {
            addCriterion("produce_task_status is null");
            return (Criteria) this;
        }

        public Criteria andProduceTaskStatusIsNotNull() {
            addCriterion("produce_task_status is not null");
            return (Criteria) this;
        }

        public Criteria andProduceTaskStatusEqualTo(Integer value) {
            addCriterion("produce_task_status =", value, "produceTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProduceTaskStatusNotEqualTo(Integer value) {
            addCriterion("produce_task_status <>", value, "produceTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProduceTaskStatusGreaterThan(Integer value) {
            addCriterion("produce_task_status >", value, "produceTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProduceTaskStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("produce_task_status >=", value, "produceTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProduceTaskStatusLessThan(Integer value) {
            addCriterion("produce_task_status <", value, "produceTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProduceTaskStatusLessThanOrEqualTo(Integer value) {
            addCriterion("produce_task_status <=", value, "produceTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProduceTaskStatusIn(List<Integer> values) {
            addCriterion("produce_task_status in", values, "produceTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProduceTaskStatusNotIn(List<Integer> values) {
            addCriterion("produce_task_status not in", values, "produceTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProduceTaskStatusBetween(Integer value1, Integer value2) {
            addCriterion("produce_task_status between", value1, value2, "produceTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProduceTaskStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("produce_task_status not between", value1, value2, "produceTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProjectTaskStatusIsNull() {
            addCriterion("project_task_status is null");
            return (Criteria) this;
        }

        public Criteria andProjectTaskStatusIsNotNull() {
            addCriterion("project_task_status is not null");
            return (Criteria) this;
        }

        public Criteria andProjectTaskStatusEqualTo(Integer value) {
            addCriterion("project_task_status =", value, "projectTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProjectTaskStatusNotEqualTo(Integer value) {
            addCriterion("project_task_status <>", value, "projectTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProjectTaskStatusGreaterThan(Integer value) {
            addCriterion("project_task_status >", value, "projectTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProjectTaskStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("project_task_status >=", value, "projectTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProjectTaskStatusLessThan(Integer value) {
            addCriterion("project_task_status <", value, "projectTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProjectTaskStatusLessThanOrEqualTo(Integer value) {
            addCriterion("project_task_status <=", value, "projectTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProjectTaskStatusIn(List<Integer> values) {
            addCriterion("project_task_status in", values, "projectTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProjectTaskStatusNotIn(List<Integer> values) {
            addCriterion("project_task_status not in", values, "projectTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProjectTaskStatusBetween(Integer value1, Integer value2) {
            addCriterion("project_task_status between", value1, value2, "projectTaskStatus");
            return (Criteria) this;
        }

        public Criteria andProjectTaskStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("project_task_status not between", value1, value2, "projectTaskStatus");
            return (Criteria) this;
        }

        public Criteria andSectionCompleteTimeIsNull() {
            addCriterion("section_complete_time is null");
            return (Criteria) this;
        }

        public Criteria andSectionCompleteTimeIsNotNull() {
            addCriterion("section_complete_time is not null");
            return (Criteria) this;
        }

        public Criteria andSectionCompleteTimeEqualTo(Date value) {
            addCriterion("section_complete_time =", value, "sectionCompleteTime");
            return (Criteria) this;
        }

        public Criteria andSectionCompleteTimeNotEqualTo(Date value) {
            addCriterion("section_complete_time <>", value, "sectionCompleteTime");
            return (Criteria) this;
        }

        public Criteria andSectionCompleteTimeGreaterThan(Date value) {
            addCriterion("section_complete_time >", value, "sectionCompleteTime");
            return (Criteria) this;
        }

        public Criteria andSectionCompleteTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("section_complete_time >=", value, "sectionCompleteTime");
            return (Criteria) this;
        }

        public Criteria andSectionCompleteTimeLessThan(Date value) {
            addCriterion("section_complete_time <", value, "sectionCompleteTime");
            return (Criteria) this;
        }

        public Criteria andSectionCompleteTimeLessThanOrEqualTo(Date value) {
            addCriterion("section_complete_time <=", value, "sectionCompleteTime");
            return (Criteria) this;
        }

        public Criteria andSectionCompleteTimeIn(List<Date> values) {
            addCriterion("section_complete_time in", values, "sectionCompleteTime");
            return (Criteria) this;
        }

        public Criteria andSectionCompleteTimeNotIn(List<Date> values) {
            addCriterion("section_complete_time not in", values, "sectionCompleteTime");
            return (Criteria) this;
        }

        public Criteria andSectionCompleteTimeBetween(Date value1, Date value2) {
            addCriterion("section_complete_time between", value1, value2, "sectionCompleteTime");
            return (Criteria) this;
        }

        public Criteria andSectionCompleteTimeNotBetween(Date value1, Date value2) {
            addCriterion("section_complete_time not between", value1, value2, "sectionCompleteTime");
            return (Criteria) this;
        }

        public Criteria andSectionTaskStatusIsNull() {
            addCriterion("section_task_status is null");
            return (Criteria) this;
        }

        public Criteria andSectionTaskStatusIsNotNull() {
            addCriterion("section_task_status is not null");
            return (Criteria) this;
        }

        public Criteria andSectionTaskStatusEqualTo(Integer value) {
            addCriterion("section_task_status =", value, "sectionTaskStatus");
            return (Criteria) this;
        }

        public Criteria andSectionTaskStatusNotEqualTo(Integer value) {
            addCriterion("section_task_status <>", value, "sectionTaskStatus");
            return (Criteria) this;
        }

        public Criteria andSectionTaskStatusGreaterThan(Integer value) {
            addCriterion("section_task_status >", value, "sectionTaskStatus");
            return (Criteria) this;
        }

        public Criteria andSectionTaskStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("section_task_status >=", value, "sectionTaskStatus");
            return (Criteria) this;
        }

        public Criteria andSectionTaskStatusLessThan(Integer value) {
            addCriterion("section_task_status <", value, "sectionTaskStatus");
            return (Criteria) this;
        }

        public Criteria andSectionTaskStatusLessThanOrEqualTo(Integer value) {
            addCriterion("section_task_status <=", value, "sectionTaskStatus");
            return (Criteria) this;
        }

        public Criteria andSectionTaskStatusIn(List<Integer> values) {
            addCriterion("section_task_status in", values, "sectionTaskStatus");
            return (Criteria) this;
        }

        public Criteria andSectionTaskStatusNotIn(List<Integer> values) {
            addCriterion("section_task_status not in", values, "sectionTaskStatus");
            return (Criteria) this;
        }

        public Criteria andSectionTaskStatusBetween(Integer value1, Integer value2) {
            addCriterion("section_task_status between", value1, value2, "sectionTaskStatus");
            return (Criteria) this;
        }

        public Criteria andSectionTaskStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("section_task_status not between", value1, value2, "sectionTaskStatus");
            return (Criteria) this;
        }

        public Criteria andFocusIsNull() {
            addCriterion("focus is null");
            return (Criteria) this;
        }

        public Criteria andFocusIsNotNull() {
            addCriterion("focus is not null");
            return (Criteria) this;
        }

        public Criteria andFocusEqualTo(Integer value) {
            addCriterion("focus =", value, "focus");
            return (Criteria) this;
        }

        public Criteria andFocusNotEqualTo(Integer value) {
            addCriterion("focus <>", value, "focus");
            return (Criteria) this;
        }

        public Criteria andFocusGreaterThan(Integer value) {
            addCriterion("focus >", value, "focus");
            return (Criteria) this;
        }

        public Criteria andFocusGreaterThanOrEqualTo(Integer value) {
            addCriterion("focus >=", value, "focus");
            return (Criteria) this;
        }

        public Criteria andFocusLessThan(Integer value) {
            addCriterion("focus <", value, "focus");
            return (Criteria) this;
        }

        public Criteria andFocusLessThanOrEqualTo(Integer value) {
            addCriterion("focus <=", value, "focus");
            return (Criteria) this;
        }

        public Criteria andFocusIn(List<Integer> values) {
            addCriterion("focus in", values, "focus");
            return (Criteria) this;
        }

        public Criteria andFocusNotIn(List<Integer> values) {
            addCriterion("focus not in", values, "focus");
            return (Criteria) this;
        }

        public Criteria andFocusBetween(Integer value1, Integer value2) {
            addCriterion("focus between", value1, value2, "focus");
            return (Criteria) this;
        }

        public Criteria andFocusNotBetween(Integer value1, Integer value2) {
            addCriterion("focus not between", value1, value2, "focus");
            return (Criteria) this;
        }

        public Criteria andPerformanceNoteIsNull() {
            addCriterion("performance_note is null");
            return (Criteria) this;
        }

        public Criteria andPerformanceNoteIsNotNull() {
            addCriterion("performance_note is not null");
            return (Criteria) this;
        }

        public Criteria andPerformanceNoteEqualTo(String value) {
            addCriterion("performance_note =", value, "performanceNote");
            return (Criteria) this;
        }

        public Criteria andPerformanceNoteNotEqualTo(String value) {
            addCriterion("performance_note <>", value, "performanceNote");
            return (Criteria) this;
        }

        public Criteria andPerformanceNoteGreaterThan(String value) {
            addCriterion("performance_note >", value, "performanceNote");
            return (Criteria) this;
        }

        public Criteria andPerformanceNoteGreaterThanOrEqualTo(String value) {
            addCriterion("performance_note >=", value, "performanceNote");
            return (Criteria) this;
        }

        public Criteria andPerformanceNoteLessThan(String value) {
            addCriterion("performance_note <", value, "performanceNote");
            return (Criteria) this;
        }

        public Criteria andPerformanceNoteLessThanOrEqualTo(String value) {
            addCriterion("performance_note <=", value, "performanceNote");
            return (Criteria) this;
        }

        public Criteria andPerformanceNoteLike(String value) {
            addCriterion("performance_note like", value, "performanceNote");
            return (Criteria) this;
        }

        public Criteria andPerformanceNoteNotLike(String value) {
            addCriterion("performance_note not like", value, "performanceNote");
            return (Criteria) this;
        }

        public Criteria andPerformanceNoteIn(List<String> values) {
            addCriterion("performance_note in", values, "performanceNote");
            return (Criteria) this;
        }

        public Criteria andPerformanceNoteNotIn(List<String> values) {
            addCriterion("performance_note not in", values, "performanceNote");
            return (Criteria) this;
        }

        public Criteria andPerformanceNoteBetween(String value1, String value2) {
            addCriterion("performance_note between", value1, value2, "performanceNote");
            return (Criteria) this;
        }

        public Criteria andPerformanceNoteNotBetween(String value1, String value2) {
            addCriterion("performance_note not between", value1, value2, "performanceNote");
            return (Criteria) this;
        }

        public Criteria andIntentIdIsNull() {
            addCriterion("intent_id is null");
            return (Criteria) this;
        }

        public Criteria andIntentIdIsNotNull() {
            addCriterion("intent_id is not null");
            return (Criteria) this;
        }

        public Criteria andIntentIdEqualTo(Integer value) {
            addCriterion("intent_id =", value, "intentId");
            return (Criteria) this;
        }

        public Criteria andIntentIdNotEqualTo(Integer value) {
            addCriterion("intent_id <>", value, "intentId");
            return (Criteria) this;
        }

        public Criteria andIntentIdGreaterThan(Integer value) {
            addCriterion("intent_id >", value, "intentId");
            return (Criteria) this;
        }

        public Criteria andIntentIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("intent_id >=", value, "intentId");
            return (Criteria) this;
        }

        public Criteria andIntentIdLessThan(Integer value) {
            addCriterion("intent_id <", value, "intentId");
            return (Criteria) this;
        }

        public Criteria andIntentIdLessThanOrEqualTo(Integer value) {
            addCriterion("intent_id <=", value, "intentId");
            return (Criteria) this;
        }

        public Criteria andIntentIdIn(List<Integer> values) {
            addCriterion("intent_id in", values, "intentId");
            return (Criteria) this;
        }

        public Criteria andIntentIdNotIn(List<Integer> values) {
            addCriterion("intent_id not in", values, "intentId");
            return (Criteria) this;
        }

        public Criteria andIntentIdBetween(Integer value1, Integer value2) {
            addCriterion("intent_id between", value1, value2, "intentId");
            return (Criteria) this;
        }

        public Criteria andIntentIdNotBetween(Integer value1, Integer value2) {
            addCriterion("intent_id not between", value1, value2, "intentId");
            return (Criteria) this;
        }

        public Criteria andAntisepticIsNull() {
            addCriterion("antiseptic is null");
            return (Criteria) this;
        }

        public Criteria andAntisepticIsNotNull() {
            addCriterion("antiseptic is not null");
            return (Criteria) this;
        }

        public Criteria andAntisepticEqualTo(Integer value) {
            addCriterion("antiseptic =", value, "antiseptic");
            return (Criteria) this;
        }

        public Criteria andAntisepticNotEqualTo(Integer value) {
            addCriterion("antiseptic <>", value, "antiseptic");
            return (Criteria) this;
        }

        public Criteria andAntisepticGreaterThan(Integer value) {
            addCriterion("antiseptic >", value, "antiseptic");
            return (Criteria) this;
        }

        public Criteria andAntisepticGreaterThanOrEqualTo(Integer value) {
            addCriterion("antiseptic >=", value, "antiseptic");
            return (Criteria) this;
        }

        public Criteria andAntisepticLessThan(Integer value) {
            addCriterion("antiseptic <", value, "antiseptic");
            return (Criteria) this;
        }

        public Criteria andAntisepticLessThanOrEqualTo(Integer value) {
            addCriterion("antiseptic <=", value, "antiseptic");
            return (Criteria) this;
        }

        public Criteria andAntisepticIn(List<Integer> values) {
            addCriterion("antiseptic in", values, "antiseptic");
            return (Criteria) this;
        }

        public Criteria andAntisepticNotIn(List<Integer> values) {
            addCriterion("antiseptic not in", values, "antiseptic");
            return (Criteria) this;
        }

        public Criteria andAntisepticBetween(Integer value1, Integer value2) {
            addCriterion("antiseptic between", value1, value2, "antiseptic");
            return (Criteria) this;
        }

        public Criteria andAntisepticNotBetween(Integer value1, Integer value2) {
            addCriterion("antiseptic not between", value1, value2, "antiseptic");
            return (Criteria) this;
        }

        public Criteria andDebugIsNull() {
            addCriterion("debug is null");
            return (Criteria) this;
        }

        public Criteria andDebugIsNotNull() {
            addCriterion("debug is not null");
            return (Criteria) this;
        }

        public Criteria andDebugEqualTo(Integer value) {
            addCriterion("debug =", value, "debug");
            return (Criteria) this;
        }

        public Criteria andDebugNotEqualTo(Integer value) {
            addCriterion("debug <>", value, "debug");
            return (Criteria) this;
        }

        public Criteria andDebugGreaterThan(Integer value) {
            addCriterion("debug >", value, "debug");
            return (Criteria) this;
        }

        public Criteria andDebugGreaterThanOrEqualTo(Integer value) {
            addCriterion("debug >=", value, "debug");
            return (Criteria) this;
        }

        public Criteria andDebugLessThan(Integer value) {
            addCriterion("debug <", value, "debug");
            return (Criteria) this;
        }

        public Criteria andDebugLessThanOrEqualTo(Integer value) {
            addCriterion("debug <=", value, "debug");
            return (Criteria) this;
        }

        public Criteria andDebugIn(List<Integer> values) {
            addCriterion("debug in", values, "debug");
            return (Criteria) this;
        }

        public Criteria andDebugNotIn(List<Integer> values) {
            addCriterion("debug not in", values, "debug");
            return (Criteria) this;
        }

        public Criteria andDebugBetween(Integer value1, Integer value2) {
            addCriterion("debug between", value1, value2, "debug");
            return (Criteria) this;
        }

        public Criteria andDebugNotBetween(Integer value1, Integer value2) {
            addCriterion("debug not between", value1, value2, "debug");
            return (Criteria) this;
        }

        public Criteria andDesignIsNull() {
            addCriterion("design is null");
            return (Criteria) this;
        }

        public Criteria andDesignIsNotNull() {
            addCriterion("design is not null");
            return (Criteria) this;
        }

        public Criteria andDesignEqualTo(Integer value) {
            addCriterion("design =", value, "design");
            return (Criteria) this;
        }

        public Criteria andDesignNotEqualTo(Integer value) {
            addCriterion("design <>", value, "design");
            return (Criteria) this;
        }

        public Criteria andDesignGreaterThan(Integer value) {
            addCriterion("design >", value, "design");
            return (Criteria) this;
        }

        public Criteria andDesignGreaterThanOrEqualTo(Integer value) {
            addCriterion("design >=", value, "design");
            return (Criteria) this;
        }

        public Criteria andDesignLessThan(Integer value) {
            addCriterion("design <", value, "design");
            return (Criteria) this;
        }

        public Criteria andDesignLessThanOrEqualTo(Integer value) {
            addCriterion("design <=", value, "design");
            return (Criteria) this;
        }

        public Criteria andDesignIn(List<Integer> values) {
            addCriterion("design in", values, "design");
            return (Criteria) this;
        }

        public Criteria andDesignNotIn(List<Integer> values) {
            addCriterion("design not in", values, "design");
            return (Criteria) this;
        }

        public Criteria andDesignBetween(Integer value1, Integer value2) {
            addCriterion("design between", value1, value2, "design");
            return (Criteria) this;
        }

        public Criteria andDesignNotBetween(Integer value1, Integer value2) {
            addCriterion("design not between", value1, value2, "design");
            return (Criteria) this;
        }

        public Criteria andDesignDeptIsNull() {
            addCriterion("design_dept is null");
            return (Criteria) this;
        }

        public Criteria andDesignDeptIsNotNull() {
            addCriterion("design_dept is not null");
            return (Criteria) this;
        }

        public Criteria andDesignDeptEqualTo(Integer value) {
            addCriterion("design_dept =", value, "designDept");
            return (Criteria) this;
        }

        public Criteria andDesignDeptNotEqualTo(Integer value) {
            addCriterion("design_dept <>", value, "designDept");
            return (Criteria) this;
        }

        public Criteria andDesignDeptGreaterThan(Integer value) {
            addCriterion("design_dept >", value, "designDept");
            return (Criteria) this;
        }

        public Criteria andDesignDeptGreaterThanOrEqualTo(Integer value) {
            addCriterion("design_dept >=", value, "designDept");
            return (Criteria) this;
        }

        public Criteria andDesignDeptLessThan(Integer value) {
            addCriterion("design_dept <", value, "designDept");
            return (Criteria) this;
        }

        public Criteria andDesignDeptLessThanOrEqualTo(Integer value) {
            addCriterion("design_dept <=", value, "designDept");
            return (Criteria) this;
        }

        public Criteria andDesignDeptIn(List<Integer> values) {
            addCriterion("design_dept in", values, "designDept");
            return (Criteria) this;
        }

        public Criteria andDesignDeptNotIn(List<Integer> values) {
            addCriterion("design_dept not in", values, "designDept");
            return (Criteria) this;
        }

        public Criteria andDesignDeptBetween(Integer value1, Integer value2) {
            addCriterion("design_dept between", value1, value2, "designDept");
            return (Criteria) this;
        }

        public Criteria andDesignDeptNotBetween(Integer value1, Integer value2) {
            addCriterion("design_dept not between", value1, value2, "designDept");
            return (Criteria) this;
        }

        public Criteria andDesignDeptTimeIsNull() {
            addCriterion("design_dept_time is null");
            return (Criteria) this;
        }

        public Criteria andDesignDeptTimeIsNotNull() {
            addCriterion("design_dept_time is not null");
            return (Criteria) this;
        }

        public Criteria andDesignDeptTimeEqualTo(Date value) {
            addCriterion("design_dept_time =", value, "designDeptTime");
            return (Criteria) this;
        }

        public Criteria andDesignDeptTimeNotEqualTo(Date value) {
            addCriterion("design_dept_time <>", value, "designDeptTime");
            return (Criteria) this;
        }

        public Criteria andDesignDeptTimeGreaterThan(Date value) {
            addCriterion("design_dept_time >", value, "designDeptTime");
            return (Criteria) this;
        }

        public Criteria andDesignDeptTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("design_dept_time >=", value, "designDeptTime");
            return (Criteria) this;
        }

        public Criteria andDesignDeptTimeLessThan(Date value) {
            addCriterion("design_dept_time <", value, "designDeptTime");
            return (Criteria) this;
        }

        public Criteria andDesignDeptTimeLessThanOrEqualTo(Date value) {
            addCriterion("design_dept_time <=", value, "designDeptTime");
            return (Criteria) this;
        }

        public Criteria andDesignDeptTimeIn(List<Date> values) {
            addCriterion("design_dept_time in", values, "designDeptTime");
            return (Criteria) this;
        }

        public Criteria andDesignDeptTimeNotIn(List<Date> values) {
            addCriterion("design_dept_time not in", values, "designDeptTime");
            return (Criteria) this;
        }

        public Criteria andDesignDeptTimeBetween(Date value1, Date value2) {
            addCriterion("design_dept_time between", value1, value2, "designDeptTime");
            return (Criteria) this;
        }

        public Criteria andDesignDeptTimeNotBetween(Date value1, Date value2) {
            addCriterion("design_dept_time not between", value1, value2, "designDeptTime");
            return (Criteria) this;
        }

        public Criteria andDesignPlanDateIsNull() {
            addCriterion("design_plan_date is null");
            return (Criteria) this;
        }

        public Criteria andDesignPlanDateIsNotNull() {
            addCriterion("design_plan_date is not null");
            return (Criteria) this;
        }

        public Criteria andDesignPlanDateEqualTo(String value) {
            addCriterion("design_plan_date =", value, "designPlanDate");
            return (Criteria) this;
        }

        public Criteria andDesignPlanDateNotEqualTo(String value) {
            addCriterion("design_plan_date <>", value, "designPlanDate");
            return (Criteria) this;
        }

        public Criteria andDesignPlanDateGreaterThan(String value) {
            addCriterion("design_plan_date >", value, "designPlanDate");
            return (Criteria) this;
        }

        public Criteria andDesignPlanDateGreaterThanOrEqualTo(String value) {
            addCriterion("design_plan_date >=", value, "designPlanDate");
            return (Criteria) this;
        }

        public Criteria andDesignPlanDateLessThan(String value) {
            addCriterion("design_plan_date <", value, "designPlanDate");
            return (Criteria) this;
        }

        public Criteria andDesignPlanDateLessThanOrEqualTo(String value) {
            addCriterion("design_plan_date <=", value, "designPlanDate");
            return (Criteria) this;
        }

        public Criteria andDesignPlanDateLike(String value) {
            addCriterion("design_plan_date like", value, "designPlanDate");
            return (Criteria) this;
        }

        public Criteria andDesignPlanDateNotLike(String value) {
            addCriterion("design_plan_date not like", value, "designPlanDate");
            return (Criteria) this;
        }

        public Criteria andDesignPlanDateIn(List<String> values) {
            addCriterion("design_plan_date in", values, "designPlanDate");
            return (Criteria) this;
        }

        public Criteria andDesignPlanDateNotIn(List<String> values) {
            addCriterion("design_plan_date not in", values, "designPlanDate");
            return (Criteria) this;
        }

        public Criteria andDesignPlanDateBetween(String value1, String value2) {
            addCriterion("design_plan_date between", value1, value2, "designPlanDate");
            return (Criteria) this;
        }

        public Criteria andDesignPlanDateNotBetween(String value1, String value2) {
            addCriterion("design_plan_date not between", value1, value2, "designPlanDate");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptIsNull() {
            addCriterion("general_dept is null");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptIsNotNull() {
            addCriterion("general_dept is not null");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptEqualTo(Integer value) {
            addCriterion("general_dept =", value, "generalDept");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptNotEqualTo(Integer value) {
            addCriterion("general_dept <>", value, "generalDept");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptGreaterThan(Integer value) {
            addCriterion("general_dept >", value, "generalDept");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptGreaterThanOrEqualTo(Integer value) {
            addCriterion("general_dept >=", value, "generalDept");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptLessThan(Integer value) {
            addCriterion("general_dept <", value, "generalDept");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptLessThanOrEqualTo(Integer value) {
            addCriterion("general_dept <=", value, "generalDept");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptIn(List<Integer> values) {
            addCriterion("general_dept in", values, "generalDept");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptNotIn(List<Integer> values) {
            addCriterion("general_dept not in", values, "generalDept");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptBetween(Integer value1, Integer value2) {
            addCriterion("general_dept between", value1, value2, "generalDept");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptNotBetween(Integer value1, Integer value2) {
            addCriterion("general_dept not between", value1, value2, "generalDept");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptTimeIsNull() {
            addCriterion("general_dept_time is null");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptTimeIsNotNull() {
            addCriterion("general_dept_time is not null");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptTimeEqualTo(Date value) {
            addCriterion("general_dept_time =", value, "generalDeptTime");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptTimeNotEqualTo(Date value) {
            addCriterion("general_dept_time <>", value, "generalDeptTime");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptTimeGreaterThan(Date value) {
            addCriterion("general_dept_time >", value, "generalDeptTime");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("general_dept_time >=", value, "generalDeptTime");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptTimeLessThan(Date value) {
            addCriterion("general_dept_time <", value, "generalDeptTime");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptTimeLessThanOrEqualTo(Date value) {
            addCriterion("general_dept_time <=", value, "generalDeptTime");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptTimeIn(List<Date> values) {
            addCriterion("general_dept_time in", values, "generalDeptTime");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptTimeNotIn(List<Date> values) {
            addCriterion("general_dept_time not in", values, "generalDeptTime");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptTimeBetween(Date value1, Date value2) {
            addCriterion("general_dept_time between", value1, value2, "generalDeptTime");
            return (Criteria) this;
        }

        public Criteria andGeneralDeptTimeNotBetween(Date value1, Date value2) {
            addCriterion("general_dept_time not between", value1, value2, "generalDeptTime");
            return (Criteria) this;
        }

        public Criteria andInstallIsNull() {
            addCriterion("install is null");
            return (Criteria) this;
        }

        public Criteria andInstallIsNotNull() {
            addCriterion("install is not null");
            return (Criteria) this;
        }

        public Criteria andInstallEqualTo(Integer value) {
            addCriterion("install =", value, "install");
            return (Criteria) this;
        }

        public Criteria andInstallNotEqualTo(Integer value) {
            addCriterion("install <>", value, "install");
            return (Criteria) this;
        }

        public Criteria andInstallGreaterThan(Integer value) {
            addCriterion("install >", value, "install");
            return (Criteria) this;
        }

        public Criteria andInstallGreaterThanOrEqualTo(Integer value) {
            addCriterion("install >=", value, "install");
            return (Criteria) this;
        }

        public Criteria andInstallLessThan(Integer value) {
            addCriterion("install <", value, "install");
            return (Criteria) this;
        }

        public Criteria andInstallLessThanOrEqualTo(Integer value) {
            addCriterion("install <=", value, "install");
            return (Criteria) this;
        }

        public Criteria andInstallIn(List<Integer> values) {
            addCriterion("install in", values, "install");
            return (Criteria) this;
        }

        public Criteria andInstallNotIn(List<Integer> values) {
            addCriterion("install not in", values, "install");
            return (Criteria) this;
        }

        public Criteria andInstallBetween(Integer value1, Integer value2) {
            addCriterion("install between", value1, value2, "install");
            return (Criteria) this;
        }

        public Criteria andInstallNotBetween(Integer value1, Integer value2) {
            addCriterion("install not between", value1, value2, "install");
            return (Criteria) this;
        }

        public Criteria andMadeIsNull() {
            addCriterion("made is null");
            return (Criteria) this;
        }

        public Criteria andMadeIsNotNull() {
            addCriterion("made is not null");
            return (Criteria) this;
        }

        public Criteria andMadeEqualTo(Integer value) {
            addCriterion("made =", value, "made");
            return (Criteria) this;
        }

        public Criteria andMadeNotEqualTo(Integer value) {
            addCriterion("made <>", value, "made");
            return (Criteria) this;
        }

        public Criteria andMadeGreaterThan(Integer value) {
            addCriterion("made >", value, "made");
            return (Criteria) this;
        }

        public Criteria andMadeGreaterThanOrEqualTo(Integer value) {
            addCriterion("made >=", value, "made");
            return (Criteria) this;
        }

        public Criteria andMadeLessThan(Integer value) {
            addCriterion("made <", value, "made");
            return (Criteria) this;
        }

        public Criteria andMadeLessThanOrEqualTo(Integer value) {
            addCriterion("made <=", value, "made");
            return (Criteria) this;
        }

        public Criteria andMadeIn(List<Integer> values) {
            addCriterion("made in", values, "made");
            return (Criteria) this;
        }

        public Criteria andMadeNotIn(List<Integer> values) {
            addCriterion("made not in", values, "made");
            return (Criteria) this;
        }

        public Criteria andMadeBetween(Integer value1, Integer value2) {
            addCriterion("made between", value1, value2, "made");
            return (Criteria) this;
        }

        public Criteria andMadeNotBetween(Integer value1, Integer value2) {
            addCriterion("made not between", value1, value2, "made");
            return (Criteria) this;
        }

        public Criteria andMaterialIsNull() {
            addCriterion("material is null");
            return (Criteria) this;
        }

        public Criteria andMaterialIsNotNull() {
            addCriterion("material is not null");
            return (Criteria) this;
        }

        public Criteria andMaterialEqualTo(Integer value) {
            addCriterion("material =", value, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialNotEqualTo(Integer value) {
            addCriterion("material <>", value, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialGreaterThan(Integer value) {
            addCriterion("material >", value, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialGreaterThanOrEqualTo(Integer value) {
            addCriterion("material >=", value, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialLessThan(Integer value) {
            addCriterion("material <", value, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialLessThanOrEqualTo(Integer value) {
            addCriterion("material <=", value, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialIn(List<Integer> values) {
            addCriterion("material in", values, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialNotIn(List<Integer> values) {
            addCriterion("material not in", values, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialBetween(Integer value1, Integer value2) {
            addCriterion("material between", value1, value2, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialNotBetween(Integer value1, Integer value2) {
            addCriterion("material not between", value1, value2, "material");
            return (Criteria) this;
        }

        public Criteria andProduceDeptIsNull() {
            addCriterion("produce_dept is null");
            return (Criteria) this;
        }

        public Criteria andProduceDeptIsNotNull() {
            addCriterion("produce_dept is not null");
            return (Criteria) this;
        }

        public Criteria andProduceDeptEqualTo(Integer value) {
            addCriterion("produce_dept =", value, "produceDept");
            return (Criteria) this;
        }

        public Criteria andProduceDeptNotEqualTo(Integer value) {
            addCriterion("produce_dept <>", value, "produceDept");
            return (Criteria) this;
        }

        public Criteria andProduceDeptGreaterThan(Integer value) {
            addCriterion("produce_dept >", value, "produceDept");
            return (Criteria) this;
        }

        public Criteria andProduceDeptGreaterThanOrEqualTo(Integer value) {
            addCriterion("produce_dept >=", value, "produceDept");
            return (Criteria) this;
        }

        public Criteria andProduceDeptLessThan(Integer value) {
            addCriterion("produce_dept <", value, "produceDept");
            return (Criteria) this;
        }

        public Criteria andProduceDeptLessThanOrEqualTo(Integer value) {
            addCriterion("produce_dept <=", value, "produceDept");
            return (Criteria) this;
        }

        public Criteria andProduceDeptIn(List<Integer> values) {
            addCriterion("produce_dept in", values, "produceDept");
            return (Criteria) this;
        }

        public Criteria andProduceDeptNotIn(List<Integer> values) {
            addCriterion("produce_dept not in", values, "produceDept");
            return (Criteria) this;
        }

        public Criteria andProduceDeptBetween(Integer value1, Integer value2) {
            addCriterion("produce_dept between", value1, value2, "produceDept");
            return (Criteria) this;
        }

        public Criteria andProduceDeptNotBetween(Integer value1, Integer value2) {
            addCriterion("produce_dept not between", value1, value2, "produceDept");
            return (Criteria) this;
        }

        public Criteria andProduceDeptTimeIsNull() {
            addCriterion("produce_dept_time is null");
            return (Criteria) this;
        }

        public Criteria andProduceDeptTimeIsNotNull() {
            addCriterion("produce_dept_time is not null");
            return (Criteria) this;
        }

        public Criteria andProduceDeptTimeEqualTo(Date value) {
            addCriterion("produce_dept_time =", value, "produceDeptTime");
            return (Criteria) this;
        }

        public Criteria andProduceDeptTimeNotEqualTo(Date value) {
            addCriterion("produce_dept_time <>", value, "produceDeptTime");
            return (Criteria) this;
        }

        public Criteria andProduceDeptTimeGreaterThan(Date value) {
            addCriterion("produce_dept_time >", value, "produceDeptTime");
            return (Criteria) this;
        }

        public Criteria andProduceDeptTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("produce_dept_time >=", value, "produceDeptTime");
            return (Criteria) this;
        }

        public Criteria andProduceDeptTimeLessThan(Date value) {
            addCriterion("produce_dept_time <", value, "produceDeptTime");
            return (Criteria) this;
        }

        public Criteria andProduceDeptTimeLessThanOrEqualTo(Date value) {
            addCriterion("produce_dept_time <=", value, "produceDeptTime");
            return (Criteria) this;
        }

        public Criteria andProduceDeptTimeIn(List<Date> values) {
            addCriterion("produce_dept_time in", values, "produceDeptTime");
            return (Criteria) this;
        }

        public Criteria andProduceDeptTimeNotIn(List<Date> values) {
            addCriterion("produce_dept_time not in", values, "produceDeptTime");
            return (Criteria) this;
        }

        public Criteria andProduceDeptTimeBetween(Date value1, Date value2) {
            addCriterion("produce_dept_time between", value1, value2, "produceDeptTime");
            return (Criteria) this;
        }

        public Criteria andProduceDeptTimeNotBetween(Date value1, Date value2) {
            addCriterion("produce_dept_time not between", value1, value2, "produceDeptTime");
            return (Criteria) this;
        }

        public Criteria andProducePlanDateIsNull() {
            addCriterion("produce_plan_date is null");
            return (Criteria) this;
        }

        public Criteria andProducePlanDateIsNotNull() {
            addCriterion("produce_plan_date is not null");
            return (Criteria) this;
        }

        public Criteria andProducePlanDateEqualTo(String value) {
            addCriterion("produce_plan_date =", value, "producePlanDate");
            return (Criteria) this;
        }

        public Criteria andProducePlanDateNotEqualTo(String value) {
            addCriterion("produce_plan_date <>", value, "producePlanDate");
            return (Criteria) this;
        }

        public Criteria andProducePlanDateGreaterThan(String value) {
            addCriterion("produce_plan_date >", value, "producePlanDate");
            return (Criteria) this;
        }

        public Criteria andProducePlanDateGreaterThanOrEqualTo(String value) {
            addCriterion("produce_plan_date >=", value, "producePlanDate");
            return (Criteria) this;
        }

        public Criteria andProducePlanDateLessThan(String value) {
            addCriterion("produce_plan_date <", value, "producePlanDate");
            return (Criteria) this;
        }

        public Criteria andProducePlanDateLessThanOrEqualTo(String value) {
            addCriterion("produce_plan_date <=", value, "producePlanDate");
            return (Criteria) this;
        }

        public Criteria andProducePlanDateLike(String value) {
            addCriterion("produce_plan_date like", value, "producePlanDate");
            return (Criteria) this;
        }

        public Criteria andProducePlanDateNotLike(String value) {
            addCriterion("produce_plan_date not like", value, "producePlanDate");
            return (Criteria) this;
        }

        public Criteria andProducePlanDateIn(List<String> values) {
            addCriterion("produce_plan_date in", values, "producePlanDate");
            return (Criteria) this;
        }

        public Criteria andProducePlanDateNotIn(List<String> values) {
            addCriterion("produce_plan_date not in", values, "producePlanDate");
            return (Criteria) this;
        }

        public Criteria andProducePlanDateBetween(String value1, String value2) {
            addCriterion("produce_plan_date between", value1, value2, "producePlanDate");
            return (Criteria) this;
        }

        public Criteria andProducePlanDateNotBetween(String value1, String value2) {
            addCriterion("produce_plan_date not between", value1, value2, "producePlanDate");
            return (Criteria) this;
        }

        public Criteria andSpecialIsNull() {
            addCriterion("special is null");
            return (Criteria) this;
        }

        public Criteria andSpecialIsNotNull() {
            addCriterion("special is not null");
            return (Criteria) this;
        }

        public Criteria andSpecialEqualTo(Integer value) {
            addCriterion("special =", value, "special");
            return (Criteria) this;
        }

        public Criteria andSpecialNotEqualTo(Integer value) {
            addCriterion("special <>", value, "special");
            return (Criteria) this;
        }

        public Criteria andSpecialGreaterThan(Integer value) {
            addCriterion("special >", value, "special");
            return (Criteria) this;
        }

        public Criteria andSpecialGreaterThanOrEqualTo(Integer value) {
            addCriterion("special >=", value, "special");
            return (Criteria) this;
        }

        public Criteria andSpecialLessThan(Integer value) {
            addCriterion("special <", value, "special");
            return (Criteria) this;
        }

        public Criteria andSpecialLessThanOrEqualTo(Integer value) {
            addCriterion("special <=", value, "special");
            return (Criteria) this;
        }

        public Criteria andSpecialIn(List<Integer> values) {
            addCriterion("special in", values, "special");
            return (Criteria) this;
        }

        public Criteria andSpecialNotIn(List<Integer> values) {
            addCriterion("special not in", values, "special");
            return (Criteria) this;
        }

        public Criteria andSpecialBetween(Integer value1, Integer value2) {
            addCriterion("special between", value1, value2, "special");
            return (Criteria) this;
        }

        public Criteria andSpecialNotBetween(Integer value1, Integer value2) {
            addCriterion("special not between", value1, value2, "special");
            return (Criteria) this;
        }

        public Criteria andTransportIsNull() {
            addCriterion("transport is null");
            return (Criteria) this;
        }

        public Criteria andTransportIsNotNull() {
            addCriterion("transport is not null");
            return (Criteria) this;
        }

        public Criteria andTransportEqualTo(Integer value) {
            addCriterion("transport =", value, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportNotEqualTo(Integer value) {
            addCriterion("transport <>", value, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportGreaterThan(Integer value) {
            addCriterion("transport >", value, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportGreaterThanOrEqualTo(Integer value) {
            addCriterion("transport >=", value, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportLessThan(Integer value) {
            addCriterion("transport <", value, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportLessThanOrEqualTo(Integer value) {
            addCriterion("transport <=", value, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportIn(List<Integer> values) {
            addCriterion("transport in", values, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportNotIn(List<Integer> values) {
            addCriterion("transport not in", values, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportBetween(Integer value1, Integer value2) {
            addCriterion("transport between", value1, value2, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportNotBetween(Integer value1, Integer value2) {
            addCriterion("transport not between", value1, value2, "transport");
            return (Criteria) this;
        }

        public Criteria andUnitIsNull() {
            addCriterion("unit is null");
            return (Criteria) this;
        }

        public Criteria andUnitIsNotNull() {
            addCriterion("unit is not null");
            return (Criteria) this;
        }

        public Criteria andUnitEqualTo(String value) {
            addCriterion("unit =", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitNotEqualTo(String value) {
            addCriterion("unit <>", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitGreaterThan(String value) {
            addCriterion("unit >", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitGreaterThanOrEqualTo(String value) {
            addCriterion("unit >=", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitLessThan(String value) {
            addCriterion("unit <", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitLessThanOrEqualTo(String value) {
            addCriterion("unit <=", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitLike(String value) {
            addCriterion("unit like", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitNotLike(String value) {
            addCriterion("unit not like", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitIn(List<String> values) {
            addCriterion("unit in", values, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitNotIn(List<String> values) {
            addCriterion("unit not in", values, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitBetween(String value1, String value2) {
            addCriterion("unit between", value1, value2, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitNotBetween(String value1, String value2) {
            addCriterion("unit not between", value1, value2, "unit");
            return (Criteria) this;
        }

        public Criteria andDesignStrIsNull() {
            addCriterion("design_str is null");
            return (Criteria) this;
        }

        public Criteria andDesignStrIsNotNull() {
            addCriterion("design_str is not null");
            return (Criteria) this;
        }

        public Criteria andDesignStrEqualTo(String value) {
            addCriterion("design_str =", value, "designStr");
            return (Criteria) this;
        }

        public Criteria andDesignStrNotEqualTo(String value) {
            addCriterion("design_str <>", value, "designStr");
            return (Criteria) this;
        }

        public Criteria andDesignStrGreaterThan(String value) {
            addCriterion("design_str >", value, "designStr");
            return (Criteria) this;
        }

        public Criteria andDesignStrGreaterThanOrEqualTo(String value) {
            addCriterion("design_str >=", value, "designStr");
            return (Criteria) this;
        }

        public Criteria andDesignStrLessThan(String value) {
            addCriterion("design_str <", value, "designStr");
            return (Criteria) this;
        }

        public Criteria andDesignStrLessThanOrEqualTo(String value) {
            addCriterion("design_str <=", value, "designStr");
            return (Criteria) this;
        }

        public Criteria andDesignStrLike(String value) {
            addCriterion("design_str like", value, "designStr");
            return (Criteria) this;
        }

        public Criteria andDesignStrNotLike(String value) {
            addCriterion("design_str not like", value, "designStr");
            return (Criteria) this;
        }

        public Criteria andDesignStrIn(List<String> values) {
            addCriterion("design_str in", values, "designStr");
            return (Criteria) this;
        }

        public Criteria andDesignStrNotIn(List<String> values) {
            addCriterion("design_str not in", values, "designStr");
            return (Criteria) this;
        }

        public Criteria andDesignStrBetween(String value1, String value2) {
            addCriterion("design_str between", value1, value2, "designStr");
            return (Criteria) this;
        }

        public Criteria andDesignStrNotBetween(String value1, String value2) {
            addCriterion("design_str not between", value1, value2, "designStr");
            return (Criteria) this;
        }

        public Criteria andProduceStrIsNull() {
            addCriterion("produce_str is null");
            return (Criteria) this;
        }

        public Criteria andProduceStrIsNotNull() {
            addCriterion("produce_str is not null");
            return (Criteria) this;
        }

        public Criteria andProduceStrEqualTo(String value) {
            addCriterion("produce_str =", value, "produceStr");
            return (Criteria) this;
        }

        public Criteria andProduceStrNotEqualTo(String value) {
            addCriterion("produce_str <>", value, "produceStr");
            return (Criteria) this;
        }

        public Criteria andProduceStrGreaterThan(String value) {
            addCriterion("produce_str >", value, "produceStr");
            return (Criteria) this;
        }

        public Criteria andProduceStrGreaterThanOrEqualTo(String value) {
            addCriterion("produce_str >=", value, "produceStr");
            return (Criteria) this;
        }

        public Criteria andProduceStrLessThan(String value) {
            addCriterion("produce_str <", value, "produceStr");
            return (Criteria) this;
        }

        public Criteria andProduceStrLessThanOrEqualTo(String value) {
            addCriterion("produce_str <=", value, "produceStr");
            return (Criteria) this;
        }

        public Criteria andProduceStrLike(String value) {
            addCriterion("produce_str like", value, "produceStr");
            return (Criteria) this;
        }

        public Criteria andProduceStrNotLike(String value) {
            addCriterion("produce_str not like", value, "produceStr");
            return (Criteria) this;
        }

        public Criteria andProduceStrIn(List<String> values) {
            addCriterion("produce_str in", values, "produceStr");
            return (Criteria) this;
        }

        public Criteria andProduceStrNotIn(List<String> values) {
            addCriterion("produce_str not in", values, "produceStr");
            return (Criteria) this;
        }

        public Criteria andProduceStrBetween(String value1, String value2) {
            addCriterion("produce_str between", value1, value2, "produceStr");
            return (Criteria) this;
        }

        public Criteria andProduceStrNotBetween(String value1, String value2) {
            addCriterion("produce_str not between", value1, value2, "produceStr");
            return (Criteria) this;
        }

        public Criteria andDesignUserIsNull() {
            addCriterion("design_user is null");
            return (Criteria) this;
        }

        public Criteria andDesignUserIsNotNull() {
            addCriterion("design_user is not null");
            return (Criteria) this;
        }

        public Criteria andDesignUserEqualTo(Integer value) {
            addCriterion("design_user =", value, "designUser");
            return (Criteria) this;
        }

        public Criteria andDesignUserNotEqualTo(Integer value) {
            addCriterion("design_user <>", value, "designUser");
            return (Criteria) this;
        }

        public Criteria andDesignUserGreaterThan(Integer value) {
            addCriterion("design_user >", value, "designUser");
            return (Criteria) this;
        }

        public Criteria andDesignUserGreaterThanOrEqualTo(Integer value) {
            addCriterion("design_user >=", value, "designUser");
            return (Criteria) this;
        }

        public Criteria andDesignUserLessThan(Integer value) {
            addCriterion("design_user <", value, "designUser");
            return (Criteria) this;
        }

        public Criteria andDesignUserLessThanOrEqualTo(Integer value) {
            addCriterion("design_user <=", value, "designUser");
            return (Criteria) this;
        }

        public Criteria andDesignUserIn(List<Integer> values) {
            addCriterion("design_user in", values, "designUser");
            return (Criteria) this;
        }

        public Criteria andDesignUserNotIn(List<Integer> values) {
            addCriterion("design_user not in", values, "designUser");
            return (Criteria) this;
        }

        public Criteria andDesignUserBetween(Integer value1, Integer value2) {
            addCriterion("design_user between", value1, value2, "designUser");
            return (Criteria) this;
        }

        public Criteria andDesignUserNotBetween(Integer value1, Integer value2) {
            addCriterion("design_user not between", value1, value2, "designUser");
            return (Criteria) this;
        }

        public Criteria andGeneralUserIsNull() {
            addCriterion("general_user is null");
            return (Criteria) this;
        }

        public Criteria andGeneralUserIsNotNull() {
            addCriterion("general_user is not null");
            return (Criteria) this;
        }

        public Criteria andGeneralUserEqualTo(Integer value) {
            addCriterion("general_user =", value, "generalUser");
            return (Criteria) this;
        }

        public Criteria andGeneralUserNotEqualTo(Integer value) {
            addCriterion("general_user <>", value, "generalUser");
            return (Criteria) this;
        }

        public Criteria andGeneralUserGreaterThan(Integer value) {
            addCriterion("general_user >", value, "generalUser");
            return (Criteria) this;
        }

        public Criteria andGeneralUserGreaterThanOrEqualTo(Integer value) {
            addCriterion("general_user >=", value, "generalUser");
            return (Criteria) this;
        }

        public Criteria andGeneralUserLessThan(Integer value) {
            addCriterion("general_user <", value, "generalUser");
            return (Criteria) this;
        }

        public Criteria andGeneralUserLessThanOrEqualTo(Integer value) {
            addCriterion("general_user <=", value, "generalUser");
            return (Criteria) this;
        }

        public Criteria andGeneralUserIn(List<Integer> values) {
            addCriterion("general_user in", values, "generalUser");
            return (Criteria) this;
        }

        public Criteria andGeneralUserNotIn(List<Integer> values) {
            addCriterion("general_user not in", values, "generalUser");
            return (Criteria) this;
        }

        public Criteria andGeneralUserBetween(Integer value1, Integer value2) {
            addCriterion("general_user between", value1, value2, "generalUser");
            return (Criteria) this;
        }

        public Criteria andGeneralUserNotBetween(Integer value1, Integer value2) {
            addCriterion("general_user not between", value1, value2, "generalUser");
            return (Criteria) this;
        }

        public Criteria andProduceUserIsNull() {
            addCriterion("produce_user is null");
            return (Criteria) this;
        }

        public Criteria andProduceUserIsNotNull() {
            addCriterion("produce_user is not null");
            return (Criteria) this;
        }

        public Criteria andProduceUserEqualTo(Integer value) {
            addCriterion("produce_user =", value, "produceUser");
            return (Criteria) this;
        }

        public Criteria andProduceUserNotEqualTo(Integer value) {
            addCriterion("produce_user <>", value, "produceUser");
            return (Criteria) this;
        }

        public Criteria andProduceUserGreaterThan(Integer value) {
            addCriterion("produce_user >", value, "produceUser");
            return (Criteria) this;
        }

        public Criteria andProduceUserGreaterThanOrEqualTo(Integer value) {
            addCriterion("produce_user >=", value, "produceUser");
            return (Criteria) this;
        }

        public Criteria andProduceUserLessThan(Integer value) {
            addCriterion("produce_user <", value, "produceUser");
            return (Criteria) this;
        }

        public Criteria andProduceUserLessThanOrEqualTo(Integer value) {
            addCriterion("produce_user <=", value, "produceUser");
            return (Criteria) this;
        }

        public Criteria andProduceUserIn(List<Integer> values) {
            addCriterion("produce_user in", values, "produceUser");
            return (Criteria) this;
        }

        public Criteria andProduceUserNotIn(List<Integer> values) {
            addCriterion("produce_user not in", values, "produceUser");
            return (Criteria) this;
        }

        public Criteria andProduceUserBetween(Integer value1, Integer value2) {
            addCriterion("produce_user between", value1, value2, "produceUser");
            return (Criteria) this;
        }

        public Criteria andProduceUserNotBetween(Integer value1, Integer value2) {
            addCriterion("produce_user not between", value1, value2, "produceUser");
            return (Criteria) this;
        }

        public Criteria andStringFlagIsNull() {
            addCriterion("string_flag is null");
            return (Criteria) this;
        }

        public Criteria andStringFlagIsNotNull() {
            addCriterion("string_flag is not null");
            return (Criteria) this;
        }

        public Criteria andStringFlagEqualTo(Integer value) {
            addCriterion("string_flag =", value, "stringFlag");
            return (Criteria) this;
        }

        public Criteria andStringFlagNotEqualTo(Integer value) {
            addCriterion("string_flag <>", value, "stringFlag");
            return (Criteria) this;
        }

        public Criteria andStringFlagGreaterThan(Integer value) {
            addCriterion("string_flag >", value, "stringFlag");
            return (Criteria) this;
        }

        public Criteria andStringFlagGreaterThanOrEqualTo(Integer value) {
            addCriterion("string_flag >=", value, "stringFlag");
            return (Criteria) this;
        }

        public Criteria andStringFlagLessThan(Integer value) {
            addCriterion("string_flag <", value, "stringFlag");
            return (Criteria) this;
        }

        public Criteria andStringFlagLessThanOrEqualTo(Integer value) {
            addCriterion("string_flag <=", value, "stringFlag");
            return (Criteria) this;
        }

        public Criteria andStringFlagIn(List<Integer> values) {
            addCriterion("string_flag in", values, "stringFlag");
            return (Criteria) this;
        }

        public Criteria andStringFlagNotIn(List<Integer> values) {
            addCriterion("string_flag not in", values, "stringFlag");
            return (Criteria) this;
        }

        public Criteria andStringFlagBetween(Integer value1, Integer value2) {
            addCriterion("string_flag between", value1, value2, "stringFlag");
            return (Criteria) this;
        }

        public Criteria andStringFlagNotBetween(Integer value1, Integer value2) {
            addCriterion("string_flag not between", value1, value2, "stringFlag");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}